package com.cheng.service;

import com.cheng.common.exception.CommonException;
import com.cheng.data.entity.PermInfoEntity;
import com.cheng.data.vo.PermInfoVO;
import com.cheng.data.vo.RoleInfoVO;

import java.util.List;

/**
 * @author: ChengJW
 * @date: 2021/11/4 7:40
 * @version: 1.0
 * @description: 权限信息处理
 */
public interface PermInfoService {

    /**
     * @author: ChengJW
     * @params: []
     * @return: java.util.List<com.cheng.data.entity.PermInfoEntity>
     * @date: 2021/11/04
     * @description: 通过权限名称，聚合查询权限信息
     */
    List<PermInfoVO> selectPermInfoByPrNm(String urNm) throws CommonException;

    /**
     * @author: ChengJW
     * @params: []
     * @return: java.util.List<com.cheng.data.entity.PermInfoEntity>
     * @date: 2021/11/04
     * @description: 查询下一级菜单权限信息
     */
    List<PermInfoVO> selectPermInfoByPrUpsLevelNm(String prUpsLevelNm,String urNm) throws CommonException;

    /**
    * @author: ChengJW
    * @params: []
    * @return: java.util.List<com.cheng.data.vo.PermInfoVO>
    * @date: 2021/11/13
    * @description: 查询所有权限信息
    */
    List<PermInfoEntity> queryPermInfoList(PermInfoVO permInfoVO) throws CommonException;

    /**
    * @author: ChengJW
    * @params: [prLvl, txTpCd]
    * @return: java.util.List<com.cheng.data.entity.PermInfoEntity>
    * @date: 2021/11/15
    * @description: 查看所有的权限信信息
    */
    List<PermInfoEntity> queryPermListForTree(String prLvl,String txTpCd) throws CommonException;
}
